package com.example.research.mapper;

import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

/**
 * 用户角色关联数据访问层
 */
@Mapper
public interface UserRoleMapper {
    
    /**
     * 插入用户角色关联
     */
    int insert(@Param("userId") Long userId, @Param("roleId") Long roleId);
    
    /**
     * 删除用户的所有角色
     */
    int deleteByUserId(@Param("userId") Long userId);
    
    /**
     * 删除指定用户角色关联
     */
    int deleteByUserIdAndRoleId(@Param("userId") Long userId, @Param("roleId") Long roleId);
    
    /**
     * 检查用户是否有指定角色
     */
    int countByUserIdAndRoleId(@Param("userId") Long userId, @Param("roleId") Long roleId);
}
